package com.sprucetec.live.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.data.mongodb.core.index.Indexed;
import org.springframework.data.mongodb.core.mapping.Field;

import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.util.Date;

@Data
public class LiveSystemLog implements Serializable {

    /**
     * 主键
     */
    @Field("_id")
    private String id;

    /**
     * 设备
     */
    @Field("device_type")
    private String deviceType;

    /**
     * 日志类型
     */
    @Field("log_type")
    private String logType;

    /**
     * 日志标题
     */
    @Indexed
    @Field("log_title")
    private String logTitle;

    /**
     * 请求地址
     */
    @Field("url")
    private String url;

    /**
     * 类型 (0：Controller日志，1：Service日志）
     */
    @Field("target_type")
    private Byte targetType;

    /**
     * 请求参数
     */
    @Field("request_message")
    private String requestMessage;

    /**
     * 返回参数
     */
    @Field("result_message")
    private String resultMessage;

    /**
     * 异常
     */
    @Field("exception")
    private String exception;

    /**
     * 操作时间
     */
    @Indexed
    @Field("c_t")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date cT;

    /**
     * 耗时 单位：ms
     */
    @Field("cost_time")
    private Integer costTime;

    /**
     * 操作人
     */
    @Field("create_user")
    private String createUser;


    private static final long serialVersionUID = -1335996832202214165L;
}